home *** CD-ROM | disk | FTP | other *** search
- 1000 '***********************************************************************
- 1010 '**** ****
- 1020 '**** Basic 'LOADER' Program ****
- 1030 '**** ****
- 1040 '***********************************************************************
- 1050 KEY OFF
- 1060 DEF SEG
- 1070 SBT$=STRING$(159,32)
- 1080 SUB%=VARPTR(SBT$)
- 1090 DIRECT=PEEK(SUB%+1)+PEEK(SUB%+2)*256
- 1100 BLOAD"LOADER.MCH",DIRECT
- 1110 DIM DIRLST$(111),FIL$(111):FCB$=STRING$(33,32):DTA$=STRING$(33,32):COUNT%=0 :F$=STRING$(12,32)
- 1120 FOR L=0 TO 111:DIRLST$(L)=F$:NEXT
- 1130 CLS:LOCATE 1,20
- 1140 COLOR 0,7:PRINT"* * * Basic Program 'LOADER' * * *":COLOR 7,0
- 1150 LOCATE 3,10,1
- 1160 PRINT"From which drive do you wish to load (A B C D): ";
- 1170 GOSUB 1260:DRV$=KY$
- 1180 HIT%=INSTR("ABCD",DRV$)
- 1190 IF HIT%=0 THEN SOUND 50,7:GOTO 1150 ELSE PRINT DRV$
- 1200 LOCATE ,,0
- 1210 CALL DIRECT(DRV$,FCB$,DTA$,DIRLST$(0),COUNT%)
- 1220 LOCATE 5,1
- 1230 FOR LOOP%=0 TO COUNT%-1:IF RIGHT$(DIRLST$(LOOP%),3)="BAS" THEN NUM=NUM+1:FIL$(NUM)=DIRLST$(LOOP%):PRINT FIL$(NUM);SPC(4);
- 1240 NEXT:PRINT
- 1250 GOTO 1300
- 1260 KY$=INKEY$:IF KY$="" THEN 1260
- 1270 IF KY$<CHR$(97) OR KY$>CHR$(122) THEN 1290
- 1280 KY$=CHR$(ASC(KY$)-32)
- 1290 RETURN
- 1300 R=5:C=1:N=1
- 1310 LOCATE R,C:COLOR 0,7:PRINT FIL$(N):COLOR 7,0
- 1320 MV$=INKEY$:IF MV$="" THEN 1320 ELSE MV=ASC(RIGHT$(MV$,1))
- 1330 IF MV=80 AND N+5<=NUM THEN LOCATE R,C:PRINT FIL$(N):N=N+5:R=R+1:GOTO 1310
- 1340 IF MV=72 AND N-5>0 THEN LOCATE R,C:PRINT FIL$(N):N=N-5:R=R-1:GOTO 1310
- 1350 IF MV=77 AND C+16<80 AND INT(N/5)*5+INT((C+32)/16)<=NUM THEN LOCATE R,C:PRINT FIL$(N):N=N+1:C=C+16:GOTO 1310
- 1360 IF MV=75 AND C-16>0 AND INT(N/5)*5+INT((C-32)/16)>-2 THEN LOCATE R,C:PRINT FIL$(N):N=N-1:C=C-16:GOTO 1310
- 1370 IF MV=13 THEN LOCATE 25,1:COLOR 0,7:PRINT "LOADING ";DRV$;":";FIL$(N);:COLOR 7,0:RUN DRV$+":"+FIL$(N)
- 1380 IF MV=71 THEN LOCATE R,C:PRINT FIL$(N):GOTO 1300
- 1390 GOTO 1320
-